home *** CD-ROM | disk | FTP | other *** search
-
- History
- ~~~~~~~
-
- First, thank you for your bug reports, comments and suggestions.
-
- Thanks to the following people (in no particular order):
- (Sorry, if I have forgotten somebody).
-
- Gunther Nikl, Veli Nuutimäki, Eric Augustine, Laura Mahoney,
- Marco Nelissen.
-
-
- V1.97
- o Case-insensitive symbol names option.
- o ELSE directive works now.
- o Some new directives (types.i stuff mainly).
- o New expression handler (boolean operators).
- o IFs were tested even if assembly was toggled off.
- o Some errenous expressions - like (A)A - don't crash anymore.
- o Multilevel optimizing.
- o Macro directive allows macro name as parameter.
- o DX directive (BSS to code or data hunk).
- o Absolute+Relative bug fixed (if in different hunks).
- o divu.l works (argh).
- o LINE DEBUG HUNK
- o Octal numbers.
-
- V1.95
- o ERRCOLOR keyword in template. Highlight error char.
- o AREXX/REMGB without parameters didn't work (+ fixed one mungwall hit
- from it).
- o QUIET startup switch disables only startup message. (You can redirect
- output to the nil: if you don't want any output).
- o SNMAOPT M controls now movem optimizing.(It was in Q flag).
- o End message is now little different in shell mode.
- o OPT directice changed to SNMAOPT to avoid any confusion.
- o fmovecr generated also extended immediate data.
- o Output file naming failed with ".s" extension (ooouups).
- o Behaves little better when running out of memory.
- o LABEL INCBIN <file>, LABEL get wrong value. (Veli Nuutimäki).
- o NULL byte in source ends it (to avoid to assemble binaries).
- o SELFCHECK arexx command.
- o Fmove.l #imm,fpcr works.
- o FBxx works now (Eric Augustine).
- o shift/rotate to <ea> generated spurious code.
- o INDEX register scale was allowed in 68000/010.
- o CNOP started to act like maniac if PC was more than 2^16.
- o addq/subq with undefined (at 1st pass) value, caused snma to begin
- 'flying high again' actions. (Gunther Nikl).
- o "'" or '"' works now (Gunther Nikl).
- o HUNK_RELOC32SHORT (implemented as 1015) to executables.
- o Produces also executables. (Laura Mahoney).
- o OPT A (address mode optimizing) was implemented as OPT E.
- o code_f, data_f, bss_f section types were not recognized.
- o FO, CLRFO, SETFO directives.
- o RS, RSRESET. RSSET directives (Marco Nelissen).
- o 'Old syntax' address mode had problems when base displacement had
- parenthesis around it.
- o Allows 99 macro parameters plus "<something>" parameters.
-
-
- V1.91
- o if any of cmpa operands had symbol which was relative or not defined
- in pass1, snma had serious problems.
- o If macro called another macro, \@ (unique label for one macro call)
- was different before the another macro call and after it.
- o Symbols which had only one char were not handled correctly.
-
- V1.90
- o moveq didn't allow xref'd data.
- o mc68xxx directives
- o Command line additions ([-option])
- o Object code naming now also checks ".s" and ".a" suffix.
- o OBJ filename in template was ignored (oh my).
- o tst with pc-relative was allowed on 68000 mode.
- o ext_ref symbols with same name were written many times, causing
- larger object file size (not actual code size).
- o xdef symbols were written to the all sections.
- o divu.l wasn't allowed.
- o Equates with relative components are handled better now.
- o Minimal WorkBench support
- o \*VALOF() + other macro 'insert functions'.
- o abslong to pc-relative optimizing.
- o DC generated too much data if the 2nd operand of the
- previous instruction was one which took some space.
- o REPT/ENDR directives
- o Global symbol table.
- o In cases where reloc was needed didn't create it, when
- symbol referred to equate which type was relative.
- o Equates with relative components are no longer written to
- the symbol list.
- o CHDIR (AREXX) command called FreeVec with wrong argument,
- causing memory loss (no crash, at least in my system).
-
- V1.70
- o BTST/BCHG/BSET/BCLR Dn,<ea> set always <ea> as d0. (uups)
- o MOVEP didn't allow zero displacement.
- o ENDC switched assembly on sometimes when it shouldn't.
-
- V1.68
- o Some minor bug fixes and changes (okay, I forgot them).
-
- V1.65
- o Address components which started with 'Z' or 'z' were
- parsed to the totally wrong thing. (Bad one).
- o IFGT did unsigned test, instead of signed.
- o Didn't notice all cases when macro was already defined.
- o Include <devicename:filepath> didn't work.
- o Expression handler didn't catch all undefined symbols.
- o AREXX, SET command.
- o 'TST An' in 020+ mode wasn't allowed.
- o Destination address mode optimizing in move instruction
- generated spurious opcodes in some cases.
- o Movem->move optimizing.
-
- V1.60
- o AREXX PORT finally added
- o Several bugs fixed
- o LONGBRA flag to the template
- o ZAn no longer required if An omitted in addressing mode.
-
-
- ========================================================================
-
- Probaply I don't remember all the changes and fixed bugs, but I
- hope all the major ones are here.
-
- First released version of SNMA is 1.39.
-